Characterizing factor critical graphs and an algorithm

نویسندگان

  • Dingjun Lou
  • Dongning Rao
چکیده

In this paper, we show a necessary and sufficient condition which characterizes all factor critical graphs. Using this necessary and sufficient condition, we develop a linear time algorithm to determine whether a graph is factor critical if one of its maximum matchings is given. 1 Terminology and introduction All graphs considered in this paper are undirected, finite and simple. In general, we follow the terminology of [1]. Let G be a connected graph and w be a vertex not in V (G). Then H = G + w denotes the graph with vertex set V (H) = V (G)∪{w} and edge set E(H) = E(G)∪ {vw | v ∈ V (G)}. A graph is said to be factor critical if G−u has a perfect matching for any vertex u in G. A graph G is said to be bicritical if G − {u, v} has a perfect matching for any two vertices u and v in G. A matching M is called near perfect matching in G if all vertices but one are incident with edges in M . The vertex u not incident with any edge in M is said to be M -unsaturated. The concept of factor critical graphs is also generalized to n-critical graphs. Let G be a connected graph with ν vertices and n be an integer such that 0 ≤ n ≤ ν − 2 and n ≡ ν (mod 2). Then G is said to be n-critical if, for any subset S ⊆ V (G) with |S| = n, G− S has a perfect matching. There has been some research on this topic (see [4–9]). In [12], Yu gives a Tutte style necessary and sufficient condition for n-critical graphs. However, it does not help to design an efficient algorithm to determine n-critical graphs. In [8], Lou and Zhong give a necessary and sufficient condition which characterizes all bicritical graphs and develop an algorithm to determine whether a graph is bicritical using the condition. In this paper, we give a necessary and sufficient condition to characterize all factor critical graphs. Using our necessary and sufficient condition, we can design a linear time algorithm to determine all factor critical graphs. 52 DINGJUN LOU AND DONGNING RAO 2 A necessary and sufficient condition In this section, we give a necessary and sufficient condition for the factor critical graphs. It serves as a basis for the algorithm in Section 3. First, we give a lemma. Lemma 1: (Lou and Zhong [8]) Let G be a graph with a perfect matching M0. Then the following propositions are equivalent: 1. G is bicritical; 2. For any perfect matching M and any two different vertices x and y in G, there is an M -alternating path between x and y, which starts and ends with edges in E(G) \M ; 3. For every pair of vertices x and y in G, there is an M0-alternating path between x and y, which starts and ends with edges in E(G) \M0. Now we give a theorem which shows the relation between n-critical graphs and (n+ 1)-critical graphs. Theorem 2: Let G be a connected graph and w be a vertex not in V (G). Then G is n-critical if and only if G+ w is (n+ 1)-critical. Proof. We prove necessity first. Suppose G is n-critical. Then, for any subset S ⊆ V (G) such that |S| = n, G − S has a perfect matching. Let G′ = G + w. Let S′ ⊆ V (G′) such that |S′| = n+ 1. If w ∈ S′, then S1 = S′ \ {w} ⊆ V (G) such that |S1| = n, so G′ − S′ = G− S1 has a perfect matching. If w / ∈ S′ , let x ∈ S′ and let S2 = S ′ \ {x}. Then S2 ⊆ V (G) and |S2| = n, and G − S2 has a perfect matching M1. Assume xy ∈ M1. Then G− S′ = (G− S2)− {x} has a near perfect matching M2 = M1 \ {xy}. Since w is adjacent to every vertex of G, wy ∈ E(G′). So G′ − S′ has a perfect matching M2 ∪ {yw}. Hence G′ is (n+ 1)-critical. Now we prove sufficiency. Suppose G′ = G+ w is (n+ 1)-critical. Then, for any S′ ⊆ V (G′) with |S′| = n + 1, G′ − S′ has a perfect matching. Let S be any subset of V (G) such that |S| = n and let S′ = S ∪ {w}. Then S′ ⊆ V (G′) and |S′| = n+1. Since G′ is (n + 1)-critical, G − S = G′ − S′ has a perfect matching. Hence G is n-critical. Theorem 3: Let G be a graph with odd order, M be a near perfect matching in G, and u be the M -unsaturated vertex of G. Then G is factor critical if and only if, for any vertex v = u in G, there is a (u, v) M -alternating path Q such that Q starts and ends with edges in E(G) \M . Proof. First, we prove sufficiency. Suppose that, for any vertex v = u in G, there is a (u, v) M -alternating path Q such that Q starts and ends with edges in E(G) \M . We are going to prove that G is factor critical. Let w ∈ V (G) and G′ = G − w. If w = u then the original matching M is a perfect matching of G′. Otherwise, if w = u, since G has the near perfect matching CHARACTERIZING FACTOR CRITICAL GRAPHS 53 M and u is the only M -unsaturated vertex, then there must exists a vertex v such that wv ∈ M . By the hypothesis of this theorem, there is a (u, v) M -alternating path Q such that Q starts and ends with edges in E(G)\M . Notice that w does not belong to Q. Then M ′ = M E(Q) is a perfect matching of G′, where M E(Q) denotes the symmetric difference of M and E(Q). Then we prove necessity. Let G′ = G + w such that w / ∈ V (G). Obviously, G′ has a perfect matching M1 = M ∪ {wu}. Since G is factor critical, by Theorem 2, G′ is bicritical. By Lemma 1, we know that, in particular, there is a (u, v) M1-alternating path Q for each v = u ∈ V (G) such that Q starts and ends with edges in E(G′) \M1. Since uw ∈ M1 and Q is an M1-alternating path starting and ending with edges in E(G′) \M1, w / ∈ V (Q). Hence Q is a (u, v) M -alternating path in G such that Q starts and ends with edges in E(G) \M . The necessity is then proved. 3 Description of the algorithm In this section, we give a linear time algorithm to determine whether a connected graph G is factor-critical if one of its maximum matching is given. A near perfect matching M is an input to this algorithm. Hence the existence of M is tested prior to this algorithm. Moreover, M should not necessarily be a near perfect matching. The algorithm can accept a maximum matching as an input, and test if it is a near perfect matching. ALGORITHM: 1. Input a maximum matching M of G; // O(|E|) 2. IfM is not a near perfect matching, then RETURN(false); (G is not factor-critical) // O(|V |) 3. Else use Procedure 1 to construct an M -alternating tree from the M -unsaturated vertex u to find an M -alternating path P from u to v such that P starts and ends with edges in E(G) \M for every v = u in V (G); // O(|E|) 4. If for some v = u in V (G), there is not such a path P (Procedure 1 returns false), then RETURN(false); (G is not factor-critical) // O(1) 5. Otherwise, RETURN(true); (G is factor-critical). // O(1) Procedure 1 uses the idea of [11] for finding an M -augmenting path to build an M -alternating tree starting from u. But it finds M -alternating paths from u to every vertex v = u such that the paths start and end with edges in E(G) \ M . We give the algorithm of Procedure 1 in the following. 54 DINGJUN LOU AND DONGNING RAO Procedure 1: 1. Use BFS strategy to build an M -alternating tree T rooted at u. First, T := ∅; 2. Put u into the even vertex queue Q; Mark u even; 3. Repeatedly take the first vertex x from Q, do the following Steps 4−7 until Q is empty; 4. For each edge xy incident with x do the following Steps 5−7; 5. Case 1: y is not visited. Let yy′ ∈ M ; T := T ∪ {xy, yy′}; Mark y odd and y′ even; Put y′ into the queue Q; Set Pre(y) := x; Pre(y′) := y; End of Case 1; 6. Case 2: y is marked odd. We do nothing in this case; 7. Case 3: y is marked even. Track along the Pre chains from x and from y respectively until we find the first common ancestor t of x and y. That is, we find vertex sequences P = (x =) a1, a2, . . . , am(= t) and R = (y =) b1, b2, . . . , bn(= t) such that Pre(ai) = ai+1, i = 1, 2, . . . ,m − 1, Pre(bj) = bj+1, j = 1, 2, . . . , n − 1, and ai = bj unless i = m and j = n; For each ai (i = 1, 2, . . . ,m− 1), set Pre(ai) := t; if ai is marked odd, then mark ai even and put ai into the queue Q; For each bj (j = 1, 2, . . . , n− 1), set Pre(bj) := t; if bj is marked odd, then mark bj even and put bj into the queue Q; End of Case 3; 8. If all vertices of G are marked even, then RETURN(true); otherwise RETURN(false); Notice that, for any even vertex x in T , if xy ∈ M , then there is an M -alternating path from u to y in T such that P starts and ends with edges in E(G) \ M . So it suffices to check that every vertex (except u) is marked even after the execution of Steps 3−7 to determine that G is factor critical. It is equivalent that every matching edge xy in M lies in a blossom of T . In Procedure 1, Pre is an array. For each vertex v in G, Pre has an element Pre(v). If v is not in any blossom of T , then Pre(v) is the father of v in T . If v lies in a blossom of T , then Pre(v) is the root of a blossom containing v which has been processed. Here the terminology blossom and root of blossom comes from the classical paper of Edmonds [2]. CHARACTERIZING FACTOR CRITICAL GRAPHS 55 Procedure 1 only takes O(|E|) time since it uses BFS strategy to build the M alternating tree T . Notice that, in Step 7, if the algorithm tracked the vertex sequences P = (x =) a1, a2, . . . , am(= t) and R = (y =) b1, b2, . . . , bn(= t) once, then the algorithm will not track any subsequence of P and R of length at least 3 one more time because the algorithm has set Pre(ai) := t and Pre(bj) := t, i = 1, 2, . . . ,m−1, j = 1, 2, . . . , n − 1. So it takes at most O(|E| + |V |) time to process all blossoms. But we have assumed that G is a connected graph. So O(|E|) +O(|V |) = O(|E|) It is easy to see that the whole algorithm only takes O(|E|) time. It is a linear time algorithm and hence is optimal. However, by [11], it takes O(|V |1/2|E|) time to find the near perfect matching M in G. To determine whether a graph G is factor critical spends the main time in finding a near perfect matching in G. If we use the definition of factor critical graphs to design an algorithm, then we delete every vertex v and try to find a perfect matching in G − v. In this case, the algorithm needs O(|V |3/2|E|) time. So our algorithm has higher efficiency.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

An Ant Colony Optimization Algorithm for Network Vulnerability Analysis

Intruders often combine exploits against multiple vulnerabilities in order to break into the system. Each attack scenario is a sequence of exploits launched by an intruder that leads to an undesirable state such as access to a database, service disruption, etc. The collection of possible attack scenarios in a computer network can be represented by a directed graph, called network attack gra...

متن کامل

A particle swarm optimization algorithm for minimization analysis of cost-sensitive attack graphs

To prevent an exploit, the security analyst must implement a suitable countermeasure. In this paper, we consider cost-sensitive attack graphs (CAGs) for network vulnerability analysis. In these attack graphs, a weight is assigned to each countermeasure to represent the cost of its implementation. There may be multiple countermeasures with different weights for preventing a single exploit. Also,...

متن کامل

Minimally non-Pfaffian graphs

We consider the question of characterizing Pfaffian graphs. We exhibit an infinite family of non-Pfaffian graphs minimal with respect to the matching minor relation. This is in sharp contrast with the bipartite case, as Little [7] proved that every bipartite non-Pfaffian graph contains a matching minor isomorphic to K3,3. We relax the notion of a matching minor and conjecture that there are onl...

متن کامل

An Integer Programming Model and a Tabu Search Algorithm to Generate α-labeling of Special Classes of Quadratic Graphs

First, an integer programming model is proposed to find an α-labeling for quadratic graphs. Then, a Tabu search algorithm is developed to solve large scale problems. The proposed approach can generate α-labeling for special classes of quadratic graphs, not previously reported in the literature. Then, the main theorem of the paper is presented. We show how a problem in graph theory c...

متن کامل

META-HEURISTIC ALGORITHMS FOR MINIMIZING THE NUMBER OF CROSSING OF COMPLETE GRAPHS AND COMPLETE BIPARTITE GRAPHS

The minimum crossing number problem is among the oldest and most fundamental problems arising in the area of automatic graph drawing. In this paper, eight population-based meta-heuristic algorithms are utilized to tackle the minimum crossing number problem for two special types of graphs, namely complete graphs and complete bipartite graphs. A 2-page book drawing representation is employed for ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Australasian J. Combinatorics

دوره 30  شماره 

صفحات  -

تاریخ انتشار 2004